#pragma warning(disable:4996)
#pragma warning(disable:6031)

#include "vector.h"

int main()
{
	const A::vector<int> v;
	v.empty();
}

//class X
//{
//public:
//	X(int a = 10, int b = 20)
//		:_a(a)
//		,_b(b)
//	{
//
//	}
//private:
//	int _a;
//	int _b;
//};

//class x
//{
//public:
//	x(int a, int b)
//		:_a(a)
//		,_b(b)
//	{
//
//	}
//private:
//	int _a;
//	int _b;
//};
//
//class B
//{
//public:
//	B()
//	{
//		
//	}
//private:
//	x _m = { 1,2 };
//	int _c;
//};

/*oid test1()
{
	A::vector<int> v = { 1,2,3,4,5 };
	v.erase(v.begin());
	v.insert(v.begin() + 2, 0);

	for (auto e : v)
	{
		cout << e << ' ';
	}
	cout << endl;
}

void test2()
{
	A::vector<int> v = { 1,2,3 };

	v.resize(10,2);

	for (auto e : v)
	{
		cout << e << ' ';
	}
	cout << endl;
}*/
//
//int main()
//{
//	//test1();
//	//test2();
//	A::vector<A::vector<int>> v({ {1,2,3},{4,5,6} });
//	for (int i = 0; i < 2; i++)
//	{
//		for (int j = 0; j < 3; j++)
//		{
//			cout << v[i][j] << ' ';
//		}
//		cout << endl;
//	}
//	cout << endl;
//	return 0;
//}

//int main()
//{
//	//const X x = { 1,2 };
//	//A::vector<int> v = { 1,2,3,4,5,6 };
//	///*for (auto e : v)
//	//{
//	//	cout << e << endl;
//	//}*/
//
//	////v.insert(v.begin() + 1, 10);
//	////v.pop_back();
//
//	////v.push_back(1);
//	////v.push_back(1);
//	////v.push_back(1);
//	////v.push_back(1);
//	////v.push_back(1);
//	////v.pop_back();
//	////v.pop_back();
//	////v.pop_back();
//	////v.pop_back();
//	////v.pop_back();
//	////v.pop_back();
//	////v.pop_back();
//	////v.pop_back();
//	////v.pop_back();
//	////v.pop_back();
//	////v.push_back(2);
//	////v.push_back(2);
//	////v.push_back(2);
//	////v.push_back(2);
//	////v.push_back(2);
//
//	////v.insert(v.begin(), 1);
//	//for (auto e : v)
//	//{
//	//	cout << e << ' ';
//	//}
//	return 0;
//}